
//This program is free software: you can redistribute it and/or modify
//it under the terms of the GNU General Public License as published by
//the Free Software Foundation, either version 3 of the License, or
//(at your option) any later version.

//This program is distributed in the hope that it will be useful,
//but WITHOUT ANY WARRANTY; without even the implied warranty of
//MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
//GNU General Public License for more details.

//You should have received a copy of the GNU General Public License
//along with this program.  If not, see <http://www.gnu.org/licenses/>.



#ifndef __LOADER__H_INCLUDED__
#define __LOADER__H_INCLUDED__

#include <string>

namespace re
{
	namespace core
	{
		class Resource
		{
		};
		class StateManager;
		class Loader
		{
		public:
			Loader() {}
			~Loader() {}

			virtual bool LoadScene(std::wstring& filename);
			virtual bool LoadResource(std::wstring& filename);
			virtual void FreeResourceCache();
			virtual Resource* GetResource(std::wstring filename, std::wstring resource);
			virtual bool FreeResource(std::wstring filename, std::wstring resource);
			virtual bool SetStateManager(StateManager* state_manager);
		};
	}
}

#endif